package com.thon.service.project;

import java.util.Date;
import java.util.List;
import java.util.Map;

import com.thon.dao.util.Page;
import com.thon.entity.project.Project;
import com.thon.entity.project.ProjectCategory;
import com.thon.entity.project.ProjectSupport;
import com.thon.entity.user.User;

/**
 * @file ProjectService.java
 * @author Zemo
 * @mail zemochen@gmail.com
 * @data 2013年10月16日 上午9:22:32
 * @description: TODO
 */
public interface ProjectSupportService {

	public void add(ProjectSupport projectSupport);

	public void update(ProjectSupport projectSupport);

	void delete(int id);

	public ProjectSupport getProjectSupport(int id);

	public List<ProjectSupport> listSupportsByProject(int projectId);

	public Long countProjectSupport(int projectId);

	public Long sumFundCurrent(Integer projectId);
	
	public Long sumProductAmount(int projectId,int userId,int productId);

	public Page<ProjectSupport> findSupportsById(int projectId, int pageNo,
			int pageSize);

	public Page<ProjectSupport> findSupportsByUser(int userId, int pageNo,
			int pageSize, Long start, Long end);
	public boolean approveSupport(int projectId,int userId);
	
	public Long sumMoney(int userId);
	
	public Map<Integer,List<String>> listProjectSupportsByProjectId(String projectId,Date registDateStart,Date comsumptionDateStart,Date registDateEnd,Date comsumptionDateEnd,int comsumptionFee,int comsumptionTotleFee,String projectCategory);
		
}